home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1996 / MacHack 1996.toast / Hacks / Hacks ’92 / FinderMenu ƒ / FinderMenu INIT ƒ / Utils.h < prev   
Encoding:
C/C++ Source or Header  |  1992-06-18  |  2.5 KB  |  110 lines  |  [TEXT/KAHL]

  1. #pragma once
  2.  
  3. /*
  4.  * (C) 1992 SixxHeads Software
  5.  * All Rights Reserved
  6.  *
  7.  * Bits and pieces from around the world.
  8.  * 
  9.  * <Revision History>
  10.  *        04/28/92 smz Created.
  11.  */
  12.  
  13. #include <Processes.h>
  14.  
  15. #define reg                register
  16.  
  17. typedef struct {
  18.     Boolean    itsDirKnown;
  19.     short    itsVRefNum;
  20.     long    itsDirID;
  21.     short    itsRefNum;
  22.     Boolean itsOpen;
  23.     
  24.     unsigned long    itsModDate;
  25.     
  26.     long    itsCreator;
  27.     long    itsType;
  28.     Str255    itsName;
  29. } FileRecord;
  30.  
  31. typedef struct {
  32.     MenuHandle    itsHandle;
  33.     short        itsLeftEdge;
  34. } PerMenu;
  35.  
  36. typedef struct {
  37.     short    itemOffset;
  38.     short    rightEdge;
  39.     short    unused;
  40.     PerMenu    permenu[];
  41. } **MenuListHandle;
  42.  
  43. MenuListHandle theMenuList : 0xa1c;
  44.  
  45. /*
  46.  * Debugging
  47.  */
  48. void dprintf(const char* format, ...);
  49. void nprintf(const char* format, ...);
  50.  
  51. /* 
  52.  * System Goodies
  53.  */
  54. Boolean IsFinderRunning(void);
  55. Handle MoveToSystemHeap(Handle hRes);
  56. Handle CopyToSystemHeap(Handle hMem);
  57. Boolean HaveGestalt(void);
  58. Boolean System7Running(void);
  59. void SetMouse(Point newLoc);
  60. void MemZero(void *pp, short l);
  61.  
  62. /* 
  63.  * Graphics goodies
  64.  */
  65. void PlotSicn(Handle hSicn, short ix, Point loc);
  66. void PushPort(GrafPtr pPort);
  67. void PopPort(void);
  68.  
  69. /* 
  70.  * ProcessManager goodies
  71.  */
  72. Boolean IsTargetRunning(long code, ProcessSerialNumber *r);
  73. OSType GetProcessCreator(void);
  74. OSType GetFrontProcessCreator(void);
  75. void BringAppToFront(ProcessSerialNumber *p);
  76.  
  77. /*
  78.  * String Goodies
  79.  */
  80. Boolean pstrequal(reg unsigned char *p1, reg unsigned char *p2);
  81. void copystring(Str255 source, Str255 dest);
  82. void cstring2pstring(unsigned char *cSource, Str255 dest);
  83. Boolean pushstring(Str255 bssource, Str255 bsdest);
  84. Boolean pushlong(long num, Str255 bsdest);
  85. void pushchar(char c, Str255 s);
  86. Boolean stringtotext(Str255 s, Handle *htext);
  87. Boolean texttostring(Handle htext, Str255 s);
  88. short String2Short(Str255 s);
  89. Boolean String2Boolean(Str255 tmp);
  90. void ellipsize(Str255 s, short width);
  91. void centerstring(Rect r, Str255 s); 
  92. void setfontsizestyle(short fontnum, short fontsize, short fontstyle);
  93.  
  94. /*
  95.  * FSUtils
  96.  */
  97. void PushFullPath(CInfoPBPtr info, Handle **hFileList);
  98. Handle GetFullPath(short vRefNum, unsigned long parentID, Str255 baseName);
  99. Boolean NewFileRecord(Str255 s, long creator, long type, FileRecord* info);
  100. Boolean OpenPrefsFile(FileRecord *info);
  101. Boolean ClosePrefsFile(FileRecord* info);
  102. OSErr CreatePrefsFile(FileRecord* info);
  103. unsigned long GetFileModDate(FileRecord* info);
  104. Boolean PrefsFileChanged(FileRecord* info);
  105.  
  106. /*
  107.  * Menus
  108.  */
  109. Boolean IsItemEnabled(unsigned long theItem);
  110. MenuHandle FindInstalledMenu(short menuID, short *leftEdge);